html, body {
  height: 100%
}

html {
  max-height: 100%
}

body {
  font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;
  color: #333;
  -webkit-font-smoothing: antialiased;
  margin: 0;
  padding: 0;
  height: 100%
}

#__wrapper {
  min-height: 100%;
  position: relative
}

main {
  padding-bottom: 120px
}

::selection {
  background: #b7d3eb
}

::-moz-selection {
  background: #b7d3eb
}

a {
  text-decoration: none;
  color: #337AB7
}

a:hover {
  text-decoration: none;
  color: #22527b;
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s
}

button:hover {
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s
}

.container {
  max-width: 980px;
}
@media (max-width: 767px) {
  .navbar-container {
    margin-left: 0;
  }
}

.dim {
  font-size: 13px;
  color: #999
}

.alert {
  margin-right: -15px
}

.footer {
  padding-top: 20px;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 80px;
  background: #f8f8f8;
  border: 1px solid #e7e7e7;
  text-align: center
}

.products-dropdown-menu {
  min-width: 119px;
  font-size: 13px
}

.admin-list {
  margin-bottom: 30px
}

h3.subtitle {
  font-size: 18px;
  font-weight: 400;
  color: #666;
  margin: 0 0 40px 0
}

@media only screen and (max-width: 414px) {
  h3.subtitle {
    font-size: 15px
  }
}

@media only screen and (max-width: 375px) {
  h3.subtitle {
    font-size: 14px
  }
}

@media only screen and (max-width: 320px) {
  h3.subtitle {
    font-size: 12px
  }
}

.btn.btn-index {
  display: block;
  width: 100%;
  border-color: #337AB7
}

.btn.btn-index:hover {
  color: #F8F8F8;
  background-color: #337AB7
}

.boxed-content {
  text-align: center;
  margin-bottom: 35px
}

.boxed-content>span.icon {
  font-size: 8em;
  color: #337AB7
}

.boxed-content .boxed-content-title {
  font-size: 25px;
  font-weight: 700;
  text-transform: uppercase
}

.boxed-content.left-aligned, .boxed-content.left-boxed-icon {
  text-align: left
}

.boxed-content.left-aligned span.icon, .boxed-content.left-boxed-icon span.icon {
  float: left;
  margin-right: 10px;
  font-size: 2em
}

.boxed-content.left-aligned .boxed-content-title, .boxed-content.left-boxed-icon .boxed-content-title {
  margin-bottom: 10px;
  line-height: 28px;
  font-weight: normal
}

.boxed-content.left-aligned.well .boxed-content-title, .boxed-content.left-boxed-icon.well .boxed-content-title {
  margin-top: 0
}

.boxed-content.left-boxed-icon span.icon {
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  border-radius: 2px;
  padding: 10px;
  width: 60px;
  height: 60px;
  background: #337AB7;
  color: #fff;
  text-align: center;
  line-height: 40px
}

.boxed-content.left-boxed-icon .boxed-content-title, .boxed-content.left-boxed-icon p {
  padding-left: 80px
}

.boxed-content p {
  line-height: 1.6em;
  font-size: 17px;
  color: #666
}

.index-content {
  margin-bottom: 70px
}

.acknowledge h3 {
  margin-top: 0px
}

.acknowledge p {
  color: #666;
  font-size: 0.9em
}

.card {
  position: relative;
  margin: 1em 0 1em 0;
  background-color: white;
  transition: box-shadow .25s;
  border-radius: 2px;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12)
}

.card .card-title {
  font-size: 24px;
  font-weight: 300
}

.card .card-title.activator {
  cursor: pointer
}

.card.small, .card.medium, .card.large {
  position: relative
}

.card.small .card-image, .card.medium .card-image, .card.large .card-image {
  max-height: 60%;
  overflow: hidden
}

.card.small .card-content, .card.medium .card-content, .card.large .card-content {
  max-height: 40%;
  overflow: hidden
}

.card.small .card-action, .card.medium .card-action, .card.large .card-action {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  background-color: inherit
}

.card.small {
  height: 300px
}

.card.medium {
  height: 400px
}

.card.large {
  height: 500px
}

.card .card-image {
  position: relative
}

.card .card-image img {
  display: block;
  border-radius: 2px 2px 0 0;
  position: relative;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%
}

.card .card-image .card-title {
  color: #333;
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 10px
}

.card .card-content {
  padding: 10px;
  border-radius: 0 0 2px 2px
}

.card .card-content p {
  margin: 0;
  color: inherit
}

.card .card-content .card-title {
  line-height: 48px
}

.card .card-action {
  border-top: 1px solid rgba(160, 160, 160, 0.2);
  padding: 10px
}

.card .card-action a:not(.btn):not(.btn-large):not(.btn-floating) {
  color: #337AB7;
  margin-right: 10px;
  transition: color .3s ease;
  text-transform: uppercase
}

.card .card-action a:not(.btn):not(.btn-large):not(.btn-floating):hover {
  color: #22527b
}

.card .card-reveal {
  padding: 10px;
  position: absolute;
  background-color: white;
  width: 100%;
  overflow-y: auto;
  top: 100%;
  height: 100%;
  z-index: 1;
  display: none
}

.card .card-reveal .card-title {
  cursor: pointer;
  display: block
}

.product p {
  line-height: 1.6em;
  color: #666
}

.product .section-title {
  color: #fa801e;
  margin-bottom: 20px
}

.product .product-header {
  background-size: 15em auto;
  background-position: center -1em;
  background-attachment: fixed
}

.product .product-title {
  font-weight: bold;
  color: #333
}

.product .product-price {
  font-weight: bold;
  text-align: right;
  color: #fa801e
}

.product .product-header-image {
  margin-top: 40px;
  margin-bottom: 40px
}

.product .product-header-image img {
  width: 100%;
  height: auto
}

.product .product-description {
  padding: 20px 0 20px 0
}

.product .product-subtitle {
  color: #337AB7;
  padding-bottom: 20px;
  font-weight: bold;
  color: #fa801e
}

.product .product-text {
  font-size: 120%
}

.product .product-text blockquote {
  margin: 20px 0 20px 0;
  color: #666
}

.product .product-content {
  padding: 30px 0 20px 0
}

.product .product-content .product-content-list {
  -webkit-columns: 2;
  -moz-columns: 2;
  columns: 2;
  -webkit-column-gap: 2.5em;
  -moz-column-gap: 2.5em;
  column-gap: 2.5em
}

.product .product-content .product-content-list li p {
  color: #999
}

.product .product-content .product-content-list li:before {
  content: "\2022";
  font-weight: bold;
  display: inline-block;
  color: #fa801e;
  float: left;
  width: 1em;
  margin-left: -1.5em
}

.product .product-content .product-content-list ul {
  list-style: none
}

.product .product-faq-list {
  -webkit-columns: 2;
  -moz-columns: 2;
  columns: 2;
  -webkit-column-gap: 2.5em;
  -moz-column-gap: 2.5em;
  column-gap: 2.5em
}

.product .product-faq-list li p {
  color: #999
}

.product .product-faq-list li:before {
  content: "\2022";
  font-weight: bold;
  display: inline-block;
  color: #fa801e;
  width: 1em;
  float: left;
  margin-left: -1.5em
}

.product .product-faq-list ul {
  list-style: none
}

.product .product-author {
  overflow: hidden
}

.product .product-author-photo {
  border-radius: 50%;
  overflow: hidden;
  width: 5em
}

.product figure {
  display: block;
  float: left;
  margin-right: 1.2em
}

.product figure img {
  display: block;
  max-width: 100%;
  height: auto
}

.product .product-author-body {
  font-size: 0.83333em;
  overflow: hidden
}

.product .product-author-body p {
  line-height: 1.5em
}

.product .product-author-body h4 {
  margin-top: 4px;
  margin-bottom: 4px
}

.product .product-author-bio {
  color: #666
}

@media only screen and (max-width: 500px) {
  .product .product-faq-list {
    -webkit-columns: 1;
    -moz-columns: 1;
    columns: 1
  }
  .product .product-content .product-content-list {
    -webkit-columns: 1;
    -moz-columns: 1;
    columns: 1
  }
}

ul.author-list {
  padding-left: 0px;
  font-size: 120%
}

ul.author-list li {
  display: inline;
  list-style-type: none;
  padding-right: 8px
}

ul.product-authors {
  padding-left: 0px;
  font-size: 120%
}

ul.product-authors li {
  list-style-type: none;
  padding-right: 8px;
  margin-top: 1.0em
}

.product-article-author {
  font-size: 16px;
  text-align: right;
  color: #666
}

.buy-button-group {
  padding: 20px 0 20px 0
}

.article-container {
  max-width: 820px;
  margin-right: auto;
  margin-left: auto
}

.article p {
  font-size: 120%;
  line-height: 1.8em;
  color: #666;
  margin: 0 0 12px
}

.article h1 {
  font-weight: bold;
  padding-top: 55px;
  padding-bottom: 25px
}

.article h1:after {
  content: ' ';
  display: block;
  border: 0.5px solid #ccc
}

.article h2 {
  margin-top: 35px;
  margin-bottom: 15px
}

.article h2:after {
  content: ' ';
  display: block;
  border: 0.5px solid #eee
}

.article h4, .article h5, .article h6 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 1.4em
}

.article blockquote {
  margin-top: 20px;
  font-size: 100%
}

.article blockquote .label {
  background-color: #999
}

.article img {
  width: 70%;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-top: 25px;
  margin-bottom: 25px
}

.article .figure {
  margin: 20px 0 30px 0
}

.article .figure .caption {
  font-size: 1.0em;
  text-align: center;
  padding: 10px 0px 10px 0px
}

.article .article-title {
  font-size: 40px;
  font-weight: bold;
  text-align: center;
  margin: 3rem 0 1rem 0
}

.article .article-meta {
  font-size: 1.0em;
  margin-bottom: 3rem;
  color: #ccc
}

.article .article-meta a {
  color: #ccc
}

.article .article-meta a:hover {
  color: #337AB7
}

.article .article-meta-item {
  display: inline-block;
  margin-right: 15px
}

.article code {
  background-color: #F8F8F8;
  color: #333
}

.article pre {
  border: 0px;
  margin: 20px 0 30px 0;
  border-radius: 5px;
  background-color: #F8F8F8
}

.article ul, .article ol {
  color: #666;
  font-size: 1.2em;
  line-height: 1.6;
  margin-bottom: 1.25rem;
  list-style-position: outside
}

.article figure {
  display: block;
  float: left;
  margin-right: 1.2em
}

.article figure img {
  margin-top: 15px;
  display: block;
  width: 100%;
  height: auto;
  border-radius: 100%
}

.article-header-top {
  font-size: 1.2em
}

.article-arrow-back:before {
  content: "\00A0\2190";
  font-weight: bold
}

.article-header-top-title {
  border: solid 1px #999;
  text-align: center;
  color: #999
}

.article-author-title {
  margin-top: 25px;
  font-size: 1.4em
}

.article-author-title:after {
  content: ' ';
  display: block;
  border: 0.5px solid #eee
}

.article-back span {
  vertical-align: -2px
}

.article-author-body {
  font-size: 0.9em;
  padding-top: 10px;
  overflow: hidden;
  display: block
}

.article-author-body p {
  line-height: 1.5em
}

.article-author-body h4 {
  margin-top: 4px;
  margin-bottom: 4px
}

.artical-author {
  overflow: hidden
}

.artical-author-photo {
  border-radius: 50%;
  overflow: hidden;
  width: 6em
}

.hljs .pyg-c, .hljs .pyg-cm, .hljs .pyg-cp, .hljs .pyg-c1, .hljs .pyg-cs, .hljs .hljs-comment, .hljs .hljs-template_comment, .hljs .hljs-javadoc, .hljs .hljs-comment *, .highlight .pyg-c, .highlight .pyg-cm, .highlight .pyg-cp, .highlight .pyg-c1, .highlight .pyg-cs, .highlight .hljs-comment, .highlight .hljs-template_comment, .highlight .hljs-javadoc, .highlight .hljs-comment * {
  color: #49992f
}

.hljs .pyg-k, .hljs .pyg-kc, .hljs .pyg-kd, .hljs .pyg-kn, .hljs .pyg-kp, .hljs .pyg-kr, .hljs .pyg-kt, .hljs .hljs-keyword, .hljs .hljs-literal, .hljs .hljs-nginx .hljs-title, .highlight .pyg-k, .highlight .pyg-kc, .highlight .pyg-kd, .highlight .pyg-kn, .highlight .pyg-kp, .highlight .pyg-kr, .highlight .pyg-kt, .highlight .hljs-keyword, .highlight .hljs-literal, .highlight .hljs-nginx .hljs-title {
  color: #aa0d91
}

.hljs .hljs-method, .hljs .hljs-list .hljs-title, .hljs .hljs-tag .hljs-title, .hljs .hljs-setting .hljs-value, .hljs .hljs-winutils, .hljs .hljs-tex .hljs-command, .hljs .hljs-http .hljs-title, .hljs .hljs-request, .hljs .hljs-status, .highlight .hljs-method, .highlight .hljs-list .hljs-title, .highlight .hljs-tag .hljs-title, .highlight .hljs-setting .hljs-value, .highlight .hljs-winutils, .highlight .hljs-tex .hljs-command, .highlight .hljs-http .hljs-title, .highlight .hljs-request, .highlight .hljs-status {
  color: #008
}

.hljs .hljs-envvar, .hljs .hljs-tex .hljs-special, .highlight .hljs-envvar, .highlight .hljs-tex .hljs-special {
  color: #660
}

.hljs .pyg-s, .hljs .pyg-sb, .hljs .pyg-sc, .hljs .pyg-sd, .hljs .pyg-s2, .hljs .pyg-se, .hljs .pyg-sh, .hljs .pyg-si, .hljs .pyg-sx, .hljs .pyg-sr, .hljs .pyg-s1, .hljs .pyg-ss, .hljs .hljs-string, .highlight .pyg-s, .highlight .pyg-sb, .highlight .pyg-sc, .highlight .pyg-sd, .highlight .pyg-s2, .highlight .pyg-se, .highlight .pyg-sh, .highlight .pyg-si, .highlight .pyg-sx, .highlight .pyg-sr, .highlight .pyg-s1, .highlight .pyg-ss, .highlight .hljs-string {
  color: #ef4134
}

.hljs .hljs-tag .hljs-value, .hljs .hljs-cdata, .hljs .hljs-filter .hljs-argument, .hljs .hljs-attr_selector, .hljs .hljs-apache .hljs-cbracket, .hljs .hljs-date, .hljs .hljs-regexp, .highlight .hljs-tag .hljs-value, .highlight .hljs-cdata, .highlight .hljs-filter .hljs-argument, .highlight .hljs-attr_selector, .highlight .hljs-apache .hljs-cbracket, .highlight .hljs-date, .highlight .hljs-regexp {
  color: #080
}

.hljs .pyg-mb, .hljs .pyg-mf, .hljs .pyg-mh, .hljs .pyg-mi, .hljs .pyg-mo, .hljs .hljs-sub .hljs-identifier, .hljs .hljs-pi, .hljs .hljs-tag, .hljs .hljs-tag .hljs-keyword, .hljs .hljs-decorator, .hljs .hljs-ini .hljs-title, .hljs .hljs-shebang, .hljs .hljs-prompt, .hljs .hljs-hexcolor, .hljs .hljs-rules .hljs-value, .hljs .hljs-css .hljs-value .hljs-number, .hljs .hljs-symbol, .hljs .hljs-symbol .hljs-string, .hljs .hljs-number, .hljs .hljs-css .hljs-function, .hljs .hljs-clojure .hljs-title, .hljs .hljs-clojure .hljs-built_in, .highlight .pyg-mb, .highlight .pyg-mf, .highlight .pyg-mh, .highlight .pyg-mi, .highlight .pyg-mo, .highlight .hljs-sub .hljs-identifier, .highlight .hljs-pi, .highlight .hljs-tag, .highlight .hljs-tag .hljs-keyword, span.hljs-keyword, .highlight .hljs-decorator, .highlight .hljs-ini .hljs-title, .highlight .hljs-shebang, .highlight .hljs-prompt, .highlight .hljs-hexcolor, .highlight .hljs-rules .hljs-value, .highlight .hljs-css .hljs-value .hljs-number, .highlight .hljs-symbol, .highlight .hljs-symbol .hljs-string, .highlight .hljs-number, .highlight .hljs-css .hljs-function, .highlight .hljs-clojure .hljs-title, .highlight .hljs-clojure .hljs-built_in {
  color: #00a
}

.hljs .pyg-bp, .hljs .hljs-class .hljs-title, .hljs .hljs-haskell .hljs-type, .hljs .hljs-smalltalk .hljs-class, .hljs .hljs-javadoctag, .hljs .hljs-yardoctag, .hljs .hljs-phpdoc, .hljs .hljs-typename, .hljs .hljs-tag .hljs-attribute, .hljs .hljs-doctype, .hljs .hljs-class .hljs-id, .hljs .hljs-built_in, .hljs .hljs-setting, .hljs .hljs-params, .hljs .hljs-clojure .hljs-attribute, .highlight .pyg-bp, .highlight .hljs-class .hljs-title, .highlight .hljs-haskell .hljs-type, .highlight .hljs-smalltalk .hljs-class, .highlight .hljs-javadoctag, .highlight .hljs-yardoctag, .highlight .hljs-phpdoc, .highlight .hljs-typename, .highlight .hljs-tag .hljs-attribute, .highlight .hljs-doctype, .highlight .hljs-class .hljs-id, .highlight .hljs-built_in, .highlight .hljs-setting, .highlight .hljs-params, .highlight .hljs-clojure .hljs-attribute {
  color: #c56021
}

.hljs .hljs-variable, .highlight .hljs-variable {
  color: #23a9db
}

.hljs .hljs-css .hljs-tag, .hljs .hljs-rules .hljs-property, .hljs .hljs-pseudo, .hljs .hljs-subst, .highlight .hljs-css .hljs-tag, .highlight .hljs-rules .hljs-property, .highlight .hljs-pseudo, .highlight .hljs-subst {
  color: #222
}

.hljs .hljs-css .hljs-class, .hljs .hljs-css .hljs-id, .highlight .hljs-css .hljs-class, .highlight .hljs-css .hljs-id {
  color: #9B703F
}

.hljs .hljs-value .hljs-important, .highlight .hljs-value .hljs-important {
  color: #ff7700;
  font-weight: bold
}

.hljs .hljs-rules .hljs-keyword, .highlight .hljs-rules .hljs-keyword {
  color: #C5AF75
}

.hljs .hljs-annotation, .hljs .hljs-apache .hljs-sqbracket, .hljs .hljs-nginx .hljs-built_in, .highlight .hljs-annotation, .highlight .hljs-apache .hljs-sqbracket, .highlight .hljs-nginx .hljs-built_in {
  color: #9B859D
}

.hljs .hljs-preprocessor, .hljs .hljs-preprocessor *, .highlight .hljs-preprocessor, .highlight .hljs-preprocessor * {
  color: #8d4228
}

.hljs .hljs-tex .hljs-formula, .highlight .hljs-tex .hljs-formula {
  background-color: #EEE;
  font-style: italic
}

.hljs .hljs-diff .hljs-header, .hljs .hljs-chunk, .highlight .hljs-diff .hljs-header, .highlight .hljs-chunk {
  color: #808080;
  font-weight: bold
}

.hljs .hljs-diff .hljs-change, .highlight .hljs-diff .hljs-change {
  background-color: #BCCFF9
}

.hljs .hljs-addition, .highlight .hljs-addition {
  background-color: #BAEEBA
}

.hljs .hljs-deletion, .highlight .hljs-deletion {
  background-color: #FFC8BD
}

.hljs .hljs-comment .hljs-yardoctag, .highlight .hljs-comment .hljs-yardoctag {
  font-weight: bold
}

.hljs .hljs-method .hljs-id, .highlight .hljs-method .hljs-id {
  color: #222
}

.issue_item {
  height: 385px
}

.issue_header {
  margin-left: 40px
}

.issue_header_meta {
  color: #ccc;
  font-size: 1.0em
}

.issue_content_item {
  font-size: 1.2em
}

.issue_content_list {
  list-style: none;
  margin-top: 0.6em
}

.issue_content_list a {
  display: block;
  padding-top: .3em;
  padding-bottom: .3em;
  text-decoration: none;
  line-height: 1.25;
  outline: none
}
